/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package Config;


/**
 * Carga en memoria los diferentes archivos de configuracion para poder usarlos posteriormente.
 * @author Raul Delgado Astudillo y xavier Pol Sevilla
 */
public class Configuracion {

    // Archivo de configuracion que contiene las urls del resto de archivos de configuracion
    private static ArchivoConfiguracion configuracio;
    // Archivo de configuracion con los recursos de imagenes, sonidos, ...
    private static ArchivoConfiguracion recursos;
    // Características de las unidades
    private static ArchivoConfiguracion unidades;
    // Opciones del perfil 1
    private static ArchivoConfiguracion perfil1;
    // Opciones del perfil 2
    private static ArchivoConfiguracion perfil2;
    // Opciones del perfil 3
    private static ArchivoConfiguracion perfil3;
    // Opciones del perfil 4
    private static ArchivoConfiguracion perfil4;

    // Cargamos el archivo al iniciar la aplicacion
    static {
        configuracio = new ArchivoConfiguracion("config/configuracion.cfg");
    }

    /*Cargamos el resto de archivos de configuracion recuperados de configuracion
     *
     */
    public static ArchivoConfiguracion getPerfil1() {
        if (perfil1 == null) {
            perfil1 = new ArchivoConfiguracion(configuracio.getPropiedadString("perfil1"));
        }
        return perfil1;
    }

    public static ArchivoConfiguracion getPerfil2() {
        if (perfil2 == null) {
            perfil2 = new ArchivoConfiguracion(configuracio.getPropiedadString("perfil2"));
        }
        return perfil2;
    }

    public static ArchivoConfiguracion getPerfil3() {
        if (perfil3 == null) {
            perfil3 = new ArchivoConfiguracion(configuracio.getPropiedadString("perfil3"));
        }
        return perfil3;
    }

     public static ArchivoConfiguracion getPerfil4() {
        if (perfil4 == null) {
            perfil4 = new ArchivoConfiguracion(configuracio.getPropiedadString("perfil4"));
        }
        return perfil4;
    }

    public static ArchivoConfiguracion getRecursos() {
        if (recursos == null) {
            recursos = new ArchivoConfiguracion(configuracio.getPropiedadString("recursos"));
        }
        return recursos;
    }

    public static ArchivoConfiguracion getUnidades() {
        if (unidades == null) {
            unidades = new ArchivoConfiguracion(configuracio.getPropiedadString("unidades"));
        }
        return unidades;
    }
}

